package simple.number;

/**
 * <a href="https://leetcode.cn/problems/find-n-unique-integers-sum-up-to-zero/">1304. 和为零的 N 个不同整数</a>
 * 给你一个整数 n，请你返回 任意 一个由 n 个 各不相同 的整数组成的数组，并且这 n 个数相加和为 0 。
 * 示例 1：
 *   输入：n = 5
 *   输出：[-7,-1,1,3,4]
 *   解释：这些数组也是正确的 [-5,-1,1,2,3]，[-3,-1,2,-2,4]。
 * 示例 2：
 *   输入：n = 3
 *   输出：[-1,0,1]
 * 示例 3：
 *   输入：n = 1
 *   输出：[0]
 * 提示：
 *   1 <= n <= 1000
 * @author 刘学松
 * @date 2023-07-31 16:05
 */
public class 和为零的N个不同整数 {
    public int[] sumZero(int n) {
        int[] ans = new int[n];
        n >>= 1;
        int index = 0;
        while (n > 0) {
            ans[index++] = -n;
            ans[index++] = n;
            n--;
        }
        return ans;
    }
}
